home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
QRZ! Ham Radio 6
/
QRZ Ham Radio Callsign Database - Volume 6.iso
/
pc
/
files
/
p_baycom
/
tfpcx210.exe
/
KISSINIT.DOC
< prev
next >
Wrap
Text File
|
1993-11-20
|
12KB
|
297 lines
KISSINIT Version 1.00 (20. November 1993)
von René Stange, DG0FT @DB0KG.DEU.EU
Inhalt
1. Allgemeines
2. Programmaufruf und Optionen
3. Initialisierungsdatei
4. Anwendungsbeispiel
5. Urheberrechte und Nutzungsbedingungen
1. Allgemeines
Bei vielen TNCs (z.B. PK232, KAM) muß mit speziellen Befehlen der
KISS-Modus aktiviert werden, bevor sie mit dem TFPCX verwendet
werden können. Das TFPCX bietet dafür selbst keine Möglichkeit.
Das Programm KISSINIT kann beliebige Zeichenfolgen über die serielle
Schnittstelle an den TNC ausgeben und damit die KISS-Einschaltung
vornehmen, wie auch die Deaktivierung von KISS, wenn der TNC für
andere Zwecke benötigt wird. Die Verwendung von KISSINIT ist
übrigens nicht auf das TFPCX und KISS beschränkt.
Die Befehle zur Aktivierung des KISS-Modes werden einer Textdatei
(Standard KISS.INI) entnommen. Sie sind von TNC zu TNC verschieden
und sollten in der TNC-Dokumentation angegeben sein. KISSINIT bietet
die Möglichkeit, mehrere verschiedene Initialisierungssequenzen in
einer Datei abzulegen und die benötigte Variante beim Start
auszuwählen. Sinnvoll wäre die Schaffung einer Art Bibliothek zur
KISS-Initialisierung für die gängigen TNC-Typen. Die mitgelieferte
Datei KISS.INI enthält bereits einige Beispielsequenzen, die ich
verschiedenen Mailbox-Artikeln entnommen habe, jedoch meist selbst
nicht testen konnte.
Wer bisher mit dem TFPCR gearbeitet hat, kann auch direkt die dort
verwendete Datei AUTOKISS.CFG übernehmen (in KISS.INI umbenennen
oder Option -F verwenden). Falls es dabei Probleme geben sollte,
kann das an der besonderen Bedeutung einiger Zeichenfolgen bei
KISSINIT liegen, die aber selten in Befehlen auftreten sollten.
Beim Aufruf von KISSINIT darf das TFPCX nicht geladen sein, sonst
erscheint eine Fehlermeldung. Die KISS-Aktivierung muß vor dem Start
des TFPCX erfolgen. Werden mehrere TNCs parallel verwendet, so ist
KISSINIT für jeden TNC extra mehrfach aufzurufen.
Die Parameter der seriellen Schnittstelle des TNC müssen für
KISSINIT wie folgt eingestellt sein:
- 8 Datenbits
- 1 Stopbit
- kein Paritätsbit
2. Programmaufruf und Optionen
Beim Aufruf von KISSINIT können bestimmte Parameter mit Hilfe von
Kommandozeilen-Optionen beeinflußt werden. Alle Optionen beginnen
mit einem '-' und werden durch Leerzeichen voneinander getrennt.
Innerhalb einer Option sind keine Leerzeichen erlaubt. Groß-/Klein-
schreibung wird nicht unterschieden. Folgende Optionen sind möglich
(mit 'KISSINIT -H' abrufbar):
Options: Default
-PCOMn[:xxx] COM port [address] COM1
-Bnnnn baud rate 9600
-Dnnn:nnn:nnnn delay (char/line/exit) 30:300:2000 (ms)
-F<file> init file KISS.INI
-S<section> choose section in file
-K kiss reset
-N no messages
Die Optionen haben folgende Bedeutung:
-PCOMn[:xxx] Auswahl der seriellen Schnittstelle (n = 1-4)
Hier ist die Schnittstelle anzugeben, an der der TNC angeschlossen
ist (Standard COM1). Die Portadresse der Schnittstelle wird
normalerweise automatisch ermittelt, kann aber bei Bedarf auch
direkt hexadezimal angegeben werden.
Beispiel:
KISSINIT -PCOM3:338
(TNC an COM3 mit Portadresse 338H)
-Bnnnn Baudrate auf der seriellen Schnittstelle (dezimal)
Mögliche Werte sind 2400, 4800, 9600 (Standard), 19200, 38400 und
57600 Baud.
-Dnnn:nnn:nnnn Schutzzeiten (dezimal in Millisekunden)
^ ^ ^
1) 2) 3)
Die meisten TNCs brauchen eine bestimmte Zeit zur Verarbeitung der
empfangenen Zeichen, zur Ausführung von Befehlen (am Zeilenende) und
für Initialisierungszwecke. Wird darauf keine Rücksicht genommen,
kann es zu Zeichenverlusten kommen oder der TNC ist noch nicht im
KISS-Modus, wenn das TFPCX gestartet wird. KISSINIT wartet deshalb
nach jeder Zeichenausgabe, am Zeilenende und am Ende der Übertragung
eine einstellbare Zeit ab, bis die nächste Ausgabe erfolgt bzw. das
Programm beendet wird.
Schutzzeiten Wertebereich Standard
1) nach jedem Zeichen 0-999 ms 30 ms
2) nach jeder Zeile 0-999 ms 300 ms
3) nach der Übertragung 0-9999 ms 2000 ms
Die Standardwerte für 1) und 2) sollten im Allgemeinen ausreichen,
Wert 3) muß aber u.U. vergrößert werden.
Beispiel:
KISSINIT -D30:300:5000
Beim TNC2 mit The Firmware dauert die KISS-Initialisierung einige
Zeit, speziell bei TNCs mit geringer Taktfrequenz (Blinken der LEDs
beobachten). Hier wartet KISSINIT deshalb 5s (= 5000 ms) vor seiner
Beendigung, damit beim nachfolgenden Start von TFPCX aus einem
Batch-File der TNC auch sicher im KISS-Modus ist.
-F<Datei> Name der Initialisierungsdatei (Standard KISS.INI)
Falls eine andere Datei verwendet werden soll, kann der Name (auch
mit Pfad) mit dieser Option angegeben werden.
-S<Abschnitt> Initialisierungssequenz (Abschnitt) auswählen
Die Initialisierungsdatei kann bei Bedarf aus mehrereren Abschnitten
bestehen, die mit '[Name]' beginnen (siehe unten). Mit dieser Option
wählt man den Abschnitt aus, der zur Initialisierung verwendet
werden soll. Als Parameter wird der Name des Abschnittes angegeben
(ohne []), wobei Groß-/Kleinschreibung nicht unterschieden wird.
Standardmäßig wird vom Anfang der Initialisierungsdatei gelesen.
-K KISS-Modus ausschalten
Soll der TNC lediglich aus dem KISS-Modus zurückgesetzt werden, wird
dazu keine Initialisierungsdatei benötigt. Diese Option bewirkt das
Senden der KISS-Reset-Sequenz an den TNC. KISS.INI wird in diesem
Fall nicht gelesen.
-N Meldungen unterdrücken
Hiermit lassen sich die Meldungen von KISSINIT und das Echo der
gesendeten Zeichen abschalten. Fehlermeldungen erscheinen aber
trotzdem.
3. Initialisierungsdatei
Die Datei kann folgende spezielle Zeichenfolgen enthalten:
\nnn Steuerzeichen mit dez. ASCII-Code nnn (0-255) ausgeben
\e Escape-Zeichen (\27) ausgeben
\k KISS-Reset-Sequenz (\192\255\192) senden
\d 1 Sekunde Pause
^c Control-Zeichen (c = A-Z) ausgeben (z.B. ^X = Ctrl-X)
In den Zeichenfolgen wird Groß-/Kleinschreibung nicht unterschieden.
Folgt auf das '\' ein anderes Zeichen als die oben angegebenen, so
wird eine eventuelle Sonderbedeutung dieses Zeichens aufgehoben und
nur das Zeichen ausgegeben. Soll z.B. das '\' ausgegeben werden, ist
also '\\' zu verwenden (bzw. '\^' beim Zeichen '^'). Wenn ein '\' am
Zeilenende steht, wird das Zeilenende-Zeichen (CR = \13) nicht an
den TNC ausgegeben. Ein ';' am Zeilenanfang leitet einen Kommentar
ein. Die Kommentarzeile wird komplett überlesen.
Die Datei wird standardmässig von Anfang bis Ende verarbeitet. Wenn
man mehrere verschiedene Initialisierungssequenzen speichern will,
kann man die Datei aber auch in Abschnitte einteilen, wobei mit der
Option -S (siehe oben) ausgewählt wird, welcher Abschnitt verwendet
werden soll. Ein Abschnitt beginnt mit dem Kopf '[Name]', der am
Zeilenanfang stehen muß. 'Name' ist die Bezeichnung, die der Option
-S zu übergeben ist.
Wird die Option -S verwendet, beginnt die Ausgabe in der Zeile, die
auf den Kopf des gewählten Abschnittes folgt. Hinter ']' in der
Kopfzeile kann auch ein beliebiger Kommentar stehen. Unabhängig von
-S wird die Verarbeitung immer beendet, wenn das Zeichen '[' am
Zeilenanfang auftritt, also der nächste Abschnitt beginnt, oder das
Dateiende erreicht wird.
4. Anwendungsbeispiel
Ein TNC2 mit The Firmware (von NORD><LINK) soll in den KISS-Modus
geschaltet werden. Der entsprechende Befehl lautet '@K' und wird
durch ein Escape-Zeichen eingeleitet. Vor der Befehlsausgabe sollen
mit Control-X eventuell im Zeilenpuffer des TNCs stehende Zeichen
gelöscht werden. Die Datei KISS.INI enthält folgende Zeile:
^X\e@K
Wenn der TNC an COM1 mit 9600 Baud angeschlossen ist, wird KISSINIT
z.B. wie folgt gestartet:
KISSINIT -PCOM1 -B9600 -D::5000
Durch die Option -D wartet KISSINIT vor dem Programmende noch 5
Sekunden, damit der TNC die Initialisierung durchführen kann (nur
bei langsamen TNCs nötig). Die Schutzzeiten für Zeichenausgabe und
neue Zeile sind hier nicht angegeben (die ':' müssen aber sein),
dafür werden die Standardwerte verwendet. Die Optionen -P und -B
könnten hier allerdings auch entfallen, da COM1 und 9600 Baud
ebenfalls Standard sind. Die Bildschirmausgabe sieht bei diesem
Beispiel so aus:
┌───────────────────────────────────────┐
│ KISSINIT v1.00 (Nov 20 1993) by DG0FT │
│ Free for non-commercial usage │
├───────────────────────────────────────┤
│ COM1 (3F8), 9600 Bd, 30 300 5000 ms │
└───────────────────────────────────────┘
Reading ...
\24\27@K
Im unteren Kasten wird die serielle Schnittstelle mit Portadresse,
die Baudrate und die Schutzzeiten (Zeichen, Zeile, Ende) angezeigt.
KISSINIT gibt außerdem alle Zeichen aus, die an den TNC gesendet
werden (Echo). Nicht darstellbare Zeichen erscheinen als '\nnn' (nnn
ist der ASCII-Code). Im Beispiel steht '\24' für '^X' und '\27' für
'\e'. Man könnte auch diese Darstellung im File KISS.INI verwenden.
Zur Abschaltung des KISS-Modes und zur nachfolgenden Einstellung des
Rufzeichens im TNC kann z.B. folgender Dateiinhalt verwendet werden:
\k\d\d\d\d\d\
\eI CALL
Zunächst erfolgt ein KISS-Reset (\k), nach dem 5 Sekunden (5 mal \d)
gewartet wird. Diese Zeit benötigt der TNC zum Neustart. Das '\' am
Zeilenende bewirkt, daß der nachfolgende Zeilenvorschub nicht an den
TNC ausgegeben wird. In der folgenden Zeile wird mit dem Befehl 'I'
das eigene Rufzeichen eingestellt.
Beide Initialisierungssequenzen kann man nun wie folgt in einer
Datei kombinieren:
;
; KISS einschalten
;
[KISSON]
^X\e@K
;
; KISS abschalten
;
[KISSOFF]
\k\d\d\d\d\d\
\eI CALL
Der Aufruf von KISSINIT erfolgt dann mit (hier ohne -P und -B):
KISSINIT -SKISSON
bzw.
KISSINIT -SKISSOFF
Die Datei enthält außerdem noch Kommentarzeilen. Zu beachten ist,
daß diese Datei nicht mehr ohne die Option -S verwendet werden kann,
weil dabei ab Dateianfang bis zur Zeile '[KISSON]' gelesen wird und
hier nur Kommentare stehen. Man könnte aber vor '[KISSON]' eine
'Standard'-Sequenz einfügen, die ohne -S verwendet wird.
5. Urheberrechte und Nutzungsbedingungen
Der Autor des Programms KISSINIT ist René Stange (DG0FT). KISSINIT
darf zur Verwendung im Amateurfunk als Kopie an Dritte weitergegeben
werden, soweit keine Gebühren erhoben werden. Insbesondere ist die
Beigabe von KISSINIT zu anderer Hard- und Software nur dann erlaubt,
wenn für das jeweilige Produkt ebenfalls keine Gebühren berechnet
werden oder mein Einverständnis vorliegt. Es ist nicht gestattet,
das Programm kommerziell zu nutzen oder zu vertreiben.
Eine Garantie für eine ordnungsgemäße Funktion wird nicht gegeben.
Der Autor kann nicht für eventuelle Schäden, die durch die Ver-
wendung von KISSINIT entstehen, haftbar gemacht werden (Haftungs-
ausschluß).